package com.app.miwawa.api.system.service.bo;

import org.framework.common.api.service.bo.CommonBoAdapter;
import org.framework.common.ext.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;

import com.app.miwawa.api.system.entity.Admin;
import com.app.miwawa.api.system.entity.Center;
import com.app.miwawa.api.system.service.dao.AdminDao;
import com.app.miwawa.api.system.service.dao.CenterDao;

/**
 * 业务接口
 * <p>描述: 平台管理员－业务接口</p>
 * <p>Company: Professional</p>
 * @author chanlong(陈龙)
 * @date 2016年1月23日 上午9:37:10
 * @version 1.0.2016
 */
@Service("adminBo")
public class AdminBo extends CommonBoAdapter<Admin, String> {

	@Autowired
	private AdminDao adminDao;
	
	@Autowired
	private CenterDao centerDao;
	
	@Autowired
	private JdbcTemplate jdbc;
	/**
	 * 检查管理员账户.
	 * 
	 * @param bean
	 * @return
	 * @author chanlong(陈龙)
	 * @date 2016年3月18日 上午11:22:27
	 */
	public Admin checkAccount(Admin bean){
		String prefix = bean.getPrefix();
		String account = new StringBuilder(StringUtil.isNotEmpty(prefix)?prefix:"").append(bean.getAccount()).toString();
		return adminDao.findByAccount(account);
	}

	/**
	 * 检查管理员密码.
	 * 
	 * @param bean
	 * @return
	 * @author chanlong(陈龙)
	 * @date 2016年3月18日 上午11:22:47
	 */
	public Admin checkPassword(Admin bean) {
		String prefix = bean.getPrefix();
		String account = new StringBuilder(StringUtil.isNotEmpty(prefix)?prefix:"").append(bean.getAccount()).toString();
		//String password = DigestUtils.md5Hex(bean.getPassword());
		String password = bean.getPassword();
		return adminDao.findByAccountAndPassword(account, password);
	}
	
	/**
	 * 获取中心.
	 * 
	 * @param id
	 * @return
	 * @author chanlong(陈龙)
	 * @date 2016年3月26日 上午10:06:15
	 */
	public Center getCenter(final String id){
		return centerDao.findOne(id);
	}
	
	/**
	 * 修改密码.
	 * @param relation
	 * @throws Exception
	 * @author chanlong(陈龙)
	 * @date 2016年4月12日 下午12:13:51
	 */
	public void password(Admin bean) throws Exception {
		String id = bean.getId();
		String password = bean.getPassword();
		String sql = "update tb_system_admin set password = ? where id = ?";
		jdbc.update(sql,password,id);
	}
}
